home *** CD-ROM | disk | FTP | other *** search
- /* ANSI C code generated by SmallEiffel. */
- /*
- -- SmallEiffel -- Release (- 0.97) -- FRANCE
- -- Copyright (C), 1994 - Dominique COLNET and Suzanne COLLIN
- -- University Henri Poincare' - Nancy 1 - email colnet@loria.fr
- -- CRIN (Centre de Recherche en Informatique de Nancy)
- -- FRANCE
- */
- #include "pretty.h"
- void rT83fatal_error(/*C*/T0* a1){
- rT43fatal_error((T43*)oRBC27eh,a1);
- }
- int rT83count(T83 *C){
- int R=0;
- R=((T84*)(C)->_list)->_upper;
- return R;
- }
- void rT83pretty_print(T83 *C){
- int _i=0;
- rT259put_character((T259*)oRBC27fmt,'\133');
- rT259level_incr((T259*)oRBC27fmt);
- _i=1;
- while (!((_i)>(((T84*)(C)->_list)->_upper))) {
- rT82pretty_print((T82*)rT84item((T84*)(C)->_list,_i));
- _i=(_i)+(1);
- /*IF*/if ((_i)<=(((T84*)(C)->_list)->_upper)) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms464);
- }
- /*FI*/}
- rT259put_character((T259*)oRBC27fmt,'\135');
- rT259level_decr((T259*)oRBC27fmt);
- }
- T0 * rT83item(T83 *C,int a1){
- T0 * R=NULL;
- R=rT84item((T84*)(C)->_list,a1);
- return R;
- }
- int rT83index_of(T83 *C,T0 * a1){
- int R=0;
- T0* _to_string=NULL;
- _to_string=((T46*)a1)->_to_string;
- R=((T84*)(C)->_list)->_upper;
- while (!(((R)==(0))||(((T0 *)_to_string)==((T0 *)((T46*)((T82*)rT84item((T84*)(C)->_list,R))->_name)->_to_string)))) {
- R=(R)-(1);
- }
- return R;
- }
- void rT83copy(T83 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT83make(T83 *C,T0 * a1,T0* a2){
- T0 * _fga=NULL;
- int _i=0;
- int _rank=0;
- C->_start_position=a1;
- C->_list=a2;
- _i=((T84*)a2)->_upper;
- while (!((_i)==(0))) {
- _fga=rT84item((T84*)a2,_i);
- _rank=rT83index_of(C,((T82*)_fga)->_name);
- /*IF*/if ((_rank)!=(_i)) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(rT82start_position((T82*)rT84item((T84*)a2,_rank)));
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(rT82start_position((T82*)_fga));
- rT83fatal_error((T0 *)ms219);
- }
- /*FI*/_i=(_i)-(1);
- }
- }
- int rT82constrained(T82 *C){
- int R=0;
- R=((int)(C)->_constraint);
- return R;
- }
- T0 * rT82start_position(T82 *C){
- T0 * R=NULL;
- R=((T46*)(C)->_name)->_start_position;
- return R;
- }
- void rT82pretty_print(T82 *C){
- rT46pretty_print((T46*)(C)->_name);
- /*IF*/if (rT82constrained(C)) {
- rT259level_incr((T259*)oRBC27fmt);
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms463);
- XrT56pretty_print((C)->_constraint);
- rT259level_decr((T259*)oRBC27fmt);
- }
- /*FI*/}
- void rT82copy(T82 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT82make(T82 *C,T0 * a1,T0 * a2){
- C->_name=a1;
- C->_constraint=a2;
- }
- void rT65bracketed_print(T65 *C){
- rT259put_character((T259*)oRBC27fmt,'\50');
- rT65pretty_print(C);
- rT259put_character((T259*)oRBC27fmt,'\51');
- }
- int rT65same_as(T65 *C,T0 * a1){
- int R=0;
- R=rT7is_equal((T7*)rT65to_key(C),XrT47to_key(a1));
- return R;
- }
- T0 * rT65add_comment(T65 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T218 *n=((T218*)new(218));
- rT218make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- void rT65print_as_target(T65 *C){
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- rT259put_character((T259*)oRBC27fmt,'\56');
- }
- void rT65pretty_print(T65 *C){
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- }
- T0* rT65to_key(T65 *C){
- T0* R=NULL;
- R=(C)->_to_string;
- return R;
- }
- void rT65copy(T65 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT65make(T65 *C,T0* a1,T0 * a2){
- C->_to_string=a1;
- C->_start_position=a2;
- }
- int rT126count(T126 *C){
- int R=0;
- R=((T127*)(C)->_list)->_upper;
- return R;
- }
- void rT126error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(a1);
- rT43error((T43*)oRBC27eh,a2);
- }
- void rT126pretty_print(T126 *C){
- int _icount=0;
- int _i=0;
- _i=1;
- while (!((_i)>(rT126count(C)))) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(3);
- /*)*/XrT65pretty_print(rT127item((T127*)(C)->_list,_i));
- _i=(_i)+(1);
- _icount=(_icount)+(1);
- /*IF*/if ((_i)<=(rT126count(C))) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms480);
- /*IF*/if ((_icount)>(4)) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(3);
- /*)*/rT259indent((T259*)oRBC27fmt);
- _icount=0;
- }
- /*FI*/}
- /*FI*/}
- }
- T0 * rT126item(T126 *C,int a1){
- T0 * R=NULL;
- R=rT127item((T127*)(C)->_list,a1);
- return R;
- }
- int rT126index_of(T126 *C,T0 * a1){
- int R=0;
- T0* _fn_key=NULL;
- _fn_key=XrT65to_key(a1);
- R=1;
- while (!(((R)>(rT126count(C)))||(rT7is_equal((T7*)_fn_key,XrT65to_key(rT126item(C,R)))))) {
- R=(R)+(1);
- }
- return R;
- }
- void rT126copy(T126 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT126make(T126 *C,T0* a1){
- int _i2=0;
- int _i=0;
- C->_list=a1;
- _i=((T127*)a1)->_upper;
- while (!((_i)==(0))) {
- _i2=rT126index_of(C,rT127item((T127*)a1,_i));
- /*IF*/if ((_i2)!=(_i)) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(rT127item((T127*)a1,_i2)));
- rT126error(XrT65start_position(rT127item((T127*)a1,_i)),(T0 *)ms239);
- }
- /*FI*/_i=(_i)-(1);
- }
- }
- void rT133pretty_print(T133 *C){
- int _i=0;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259skip((T259*)oRBC27fmt,1);
- }
- else {
- rT259indent((T259*)oRBC27fmt);
- }
- /*FI*/rT259keyword((T259*)oRBC27fmt,(T0 *)ms486);
- rT121pretty_print((T121*)(C)->_clients);
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (((int)(C)->_comment)) {
- /*IF*/if (((T259*)oRBC27fmt)->_zen_mode) {
- }
- else if ((((T259*)oRBC27fmt)->_column)>(15)) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*/}
- /*FI*/rT57pretty_print((T57*)(C)->_comment);
- /*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*/}
- /*FI*//*IF*/if (((int)(C)->_list)) {
- _i=1;
- while (!((_i)>(((T61*)(C)->_list)->_upper))) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- /*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*/XrT60pretty_print(rT61item((T61*)(C)->_list,_i));
- _i=(_i)+(1);
- }
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*/}
- void rT133add_into(T133 *C,T0 * a1){
- T0 * _f=NULL;
- int _i=0;
- /*IF*/if ((((int)(C)->_list))&&(!(rT61empty((T61*)(C)->_list)))) {
- _i=1;
- while (!((_i)>(((T61*)(C)->_list)->_upper))) {
- _f=rT61item((T61*)(C)->_list,_i);
- XrT60set_clients(_f,(C)->_clients);
- XrT60add_into(_f,a1);
- _i=(_i)+(1);
- }
- }
- /*FI*/}
- void rT133copy(T133 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT133make(T133 *C,T0 * a1,T0 * a2,T0* a3){
- C->_clients=a1;
- C->_comment=a2;
- C->_list=a3;
- }
- void rT257pretty_print(T257 *C){
- int _i=0;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*/rT259keyword((T259*)oRBC27fmt,(T0 *)ms487);
- /*IF*/if (((int)(C)->_header_comment)) {
- rT57pretty_print((T57*)(C)->_header_comment);
- }
- /*FI*//*IF*/if (((int)(C)->_list)) {
- _i=1;
- while (!((_i)>(((T156*)(C)->_list)->_upper))) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- /*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_semi_colon_flag)=(1);
- /*)*/rT62pretty_print((T62*)rT156item((T156*)(C)->_list,_i));
- _i=(_i)+(1);
- }
- }
- /*FI*/}
- void rT257copy(T257 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT257make(T257 *C,T0 * a1,T0 * a2,T0* a3){
- C->_start_position=a1;
- C->_header_comment=a2;
- C->_list=a3;
- }
- void rT64bracketed_print(T64 *C){
- rT259put_character((T259*)oRBC27fmt,'\50');
- rT64pretty_print(C);
- rT259put_character((T259*)oRBC27fmt,'\51');
- }
- int rT64same_as(T64 *C,T0 * a1){
- int R=0;
- R=rT7is_equal((T7*)(C)->_to_key,XrT47to_key(a1));
- return R;
- }
- T0 * rT64add_comment(T64 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T218 *n=((T218*)new(218));
- rT218make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- void rT64print_as_target(T64 *C){
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- rT259put_character((T259*)oRBC27fmt,'\56');
- }
- void rT64pretty_print2(T64 *C){
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- }
- void rT64pretty_print(T64 *C){
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms494);
- rT259put_character((T259*)oRBC27fmt,'\42');
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- rT259put_character((T259*)oRBC27fmt,'\42');
- }
- T0* rT64clone(T64 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- void rT64copy(T64 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT64make(T64 *C,T0* a1,T0 * a2){
- C->_to_string=a1;
- C->_start_position=a2;
- C->_to_key=rT64clone(C,(C)->_to_string);
- rT7append((T7*)(C)->_to_key,(T0 *)ms83);
- }
- void rT46set_with(T46 *C,T0 * a1){
- C->_start_position=((T46*)a1)->_start_position;
- rT46set_to_string(C,((T46*)a1)->_to_string);
- }
- int rT46frozen_id(T46 *C){
- int R=0;
- /*IF*/if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms182)) {
- R=1;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms192)) {
- R=2;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms189)) {
- R=3;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms194)) {
- R=4;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms196)) {
- R=5;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms187)) {
- R=6;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms186)) {
- R=7;
- }
- else if (((T0 *)(C)->_to_string)==((T0 *)(T0 *)ms184)) {
- R=8;
- }
- /*FI*/return R;
- }
- void rT46pretty_print(T46 *C){
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- }
- T0* rT46clone(T46 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- T0* rT46to_key(T46 *C){
- T0* R=NULL;
- R=(C)->_to_string;
- return R;
- }
- T0*oRBC46special_names;
- int ofBC46names_memory=0;
- T0*oRBC46names_memory;
- T0* rT46names_memory(/*C*/void){
- T0* R=NULL;
- if (ofBC46names_memory==0){
- ofBC46names_memory=1;
- {T42 *n=((T42*)new(42));
- rT42make(n,1,256);
- R=(T0 *)n;}
- rT42copy((T42*)R,oRBC46special_names);
- oRBC46names_memory=R;}
- return oRBC46names_memory;}
- T0 * rT46base_class(T46 *C){
- T0 * R=NULL;
- R=rT50base_class((T50*)oRBC27small_eiffel,(T0 *)C);
- return R;
- }
- void rT46copy(T46 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT46make_unknown(T46 *C){
- {T44 *n=((T44*)new(44));
- rT44with(n,1,1,(T0 *)C);
- C->_start_position=(T0 *)n;}
- C->_to_string=(T0 *)ms77;
- }
- void rT46make(T46 *C,T0* a1,T0 * a2){
- C->_start_position=a2;
- rT46set_to_string(C,a1);
- }
- void rT46set_to_string(T46 *C,T0* a1){
- T0* _mem=NULL;
- int _i=0;
- _mem=rT46names_memory();
- rT7copy((T7*)(T0 *)ms199,a1);
- rT7to_upper((T7*)(T0 *)ms199);
- _i=rT42index_of((T42*)_mem,(T0 *)ms199);
- /*IF*/if ((_i)<=(((T42*)_mem)->_upper)) {
- C->_to_string=rT42item((T42*)_mem,_i);
- }
- else {
- C->_to_string=rT46clone(C,(T0 *)ms199);
- rT42add_last((T42*)_mem,(C)->_to_string);
- }
- /*FI*/}
- void rT116set_undefine(T116 *C,T0* a1){
- {T126 *n=((T126*)new(126));
- rT126make(n,a1);
- C->_undefine_list=(T0 *)n;}
- }
- void rT116fatal_error(/*C*/T0* a1){
- rT43fatal_error((T43*)oRBC27eh,a1);
- }
- void rT116pretty_print(T116 *C){
- int _end_needed=0;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- XrT56pretty_print((C)->_type);
- /*IF*/if (((((!((C)->_rename_list))&&(!((C)->_export_list)))&&(!((C)->_undefine_list)))&&(!((C)->_redefine_list)))&&(!((C)->_select_list))) {
- rT259put_character((T259*)oRBC27fmt,'\73');
- }
- /*FI*//*IF*/if (((int)(C)->_comment)) {
- rT259put_character((T259*)oRBC27fmt,'\40');
- rT57pretty_print((T57*)(C)->_comment);
- }
- /*FI*//*IF*/if (((int)(C)->_rename_list)) {
- _end_needed=1;
- rT118pretty_print((T118*)(C)->_rename_list);
- }
- /*FI*//*IF*/if (((int)(C)->_export_list)) {
- _end_needed=1;
- rT120pretty_print((T120*)(C)->_export_list);
- }
- /*FI*//*IF*/if (((int)(C)->_undefine_list)) {
- _end_needed=1;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms481);
- rT126pretty_print((T126*)(C)->_undefine_list);
- }
- /*FI*//*IF*/if (((int)(C)->_redefine_list)) {
- _end_needed=1;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms482);
- rT126pretty_print((T126*)(C)->_redefine_list);
- }
- /*FI*//*IF*/if (((int)(C)->_select_list)) {
- _end_needed=1;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms483);
- rT126pretty_print((T126*)(C)->_select_list);
- }
- /*FI*//*IF*/if (_end_needed) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms484);
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- }
- void rT116get_started(T116 *C,T0 * a1){
- int _all_check=0;
- T0 * _fn2=NULL;
- T0 * _fn=NULL;
- T0 * _pbc=NULL;
- T0 * _wbc=NULL;
- int _i=0;
- _all_check=rT258all_check((T258*)oRBC27eiffel_run_control);
- C->_parent_list=a1;
- _pbc=XrT56base_class((C)->_type);
- _wbc=((T129*)(C)->_parent_list)->_base_class;
- /*IF*/if ((_all_check)&&(((int)(C)->_rename_list))) {
- rT118get_started((T118*)(C)->_rename_list,_pbc);
- }
- /*FI*//*IF*/if ((_all_check)&&(((int)(C)->_undefine_list))) {
- _i=rT126count((T126*)(C)->_undefine_list);
- while (!((_i)==(0))) {
- _fn=rT126item((T126*)(C)->_undefine_list,_i);
- /*IF*/if (!(rT48has((T48*)_pbc,_fn))) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(_fn));
- rT116fatal_error((T0 *)ms419);
- }
- /*FI*/_i=(_i)-(1);
- }
- }
- /*FI*//*IF*/if ((_all_check)&&(((int)(C)->_redefine_list))) {
- _i=rT126count((T126*)(C)->_redefine_list);
- while (!((_i)==(0))) {
- _fn=rT126item((T126*)(C)->_redefine_list,_i);
- /*IF*/if (!(rT48proper_has((T48*)_wbc,_fn))) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(_fn));
- rT116fatal_error((T0 *)ms420);
- }
- /*FI*//*IF*/if (!(rT48has((T48*)_pbc,_fn))) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(_fn));
- rT116fatal_error((T0 *)ms421);
- }
- /*FI*//*IF*/if (((int)(C)->_rename_list)) {
- _fn2=rT118to_new_name((T118*)(C)->_rename_list,_fn);
- /*IF*/if (((T0 *)_fn2)!=((T0 *)_fn)) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(_fn));
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(_fn2));
- rT116fatal_error((T0 *)ms422);
- }
- /*FI*/}
- /*FI*/_i=(_i)-(1);
- }
- }
- /*FI*/}
- T0*oRBC116forbidden_parent_list;
- void rT116add_rename(T116 *C,T0 * a1){
- /*IF*/if (!((C)->_rename_list)) {
- {T118 *n=((T118*)new(118));
- /*(IRF3*/((n)->_list)=(ma(119,0,1,a1));
- /*)*/C->_rename_list=(T0 *)n;}
- }
- else {
- rT118add_last((T118*)(C)->_rename_list,a1);
- }
- /*FI*/}
- void rT116copy(T116 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT116has(T116 *C,T0 * a1){
- int R=0;
- R=rT48has((T48*)XrT56base_class((C)->_type),a1);
- return R;
- }
- void rT116set_redefine(T116 *C,T0* a1){
- {T126 *n=((T126*)new(126));
- rT126make(n,a1);
- C->_redefine_list=(T0 *)n;}
- }
- void rT116set_select(T116 *C,T0* a1){
- {T126 *n=((T126*)new(126));
- rT126make(n,a1);
- C->_select_list=(T0 *)n;}
- }
- void rT116make(T116 *C,T0 * a1){
- C->_type=a1;
- /*IF*/if (rT42fast_has((T42*)oRBC116forbidden_parent_list,XrT56written_mark((C)->_type))) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT56start_position((C)->_type));
- /*UT*/(T43*)oRBC27eh;
- rT43append((T0 *)ms224);
- /*UT*/(T43*)oRBC27eh;
- rT43append(XrT56written_mark((C)->_type));
- rT116fatal_error((T0 *)ms225);
- }
- /*FI*/}
- T0*oRBC27eiffel_run_control;
- void rT124warning(/*C*/T0 * a1,T0* a2){
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(a1);
- rT43warning((T43*)oRBC27eh,a2);
- }
- void rT124pretty_print(T124 *C){
- int _i=0;
- _i=1;
- while (!((_i)>(((T123*)(C)->_list)->_upper))) {
- rT46pretty_print((T46*)rT123item((T123*)(C)->_list,_i));
- _i=(_i)+(1);
- /*IF*/if ((_i)<=(((T123*)(C)->_list)->_upper)) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms478);
- }
- /*FI*/}
- }
- int rT124index_of(T124 *C,T0 * a1){
- int R=0;
- T0* _to_string=NULL;
- _to_string=XrT47to_string(a1);
- R=((T123*)(C)->_list)->_upper;
- while (!(((R)==(0))||(((T0 *)_to_string)==((T0 *)((T46*)rT123item((T123*)(C)->_list,R))->_to_string)))) {
- R=(R)-(1);
- }
- return R;
- }
- void rT124copy(T124 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT124make(T124 *C,T0* a1){
- int _i2=0;
- int _i=0;
- C->_list=a1;
- _i=((T123*)(C)->_list)->_upper;
- while (!((_i)==(0))) {
- _i2=rT124index_of(C,rT123item((T123*)(C)->_list,_i));
- /*IF*/if ((_i2)!=(_i)) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(((T46*)rT123item((T123*)(C)->_list,_i2))->_start_position);
- rT124warning(((T46*)rT123item((T123*)(C)->_list,_i))->_start_position,(T0 *)ms235);
- }
- /*FI*/_i=(_i)-(1);
- }
- }
- int rT129count(T129 *C){
- int R=0;
- R=((T128*)(C)->_list)->_upper;
- return R;
- }
- void rT129pretty_print(T129 *C){
- int _i=0;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (((T259*)oRBC27fmt)->_zen_mode) {
- rT259indent((T259*)oRBC27fmt);
- }
- else {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*/rT259keyword((T259*)oRBC27fmt,(T0 *)ms470);
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- /*IF*/if (((int)(C)->_heading_comment)) {
- rT57pretty_print((T57*)(C)->_heading_comment);
- }
- /*FI*/_i=1;
- while (!((_i)>(((T128*)(C)->_list)->_upper))) {
- rT116pretty_print((T116*)rT128item((T128*)(C)->_list,_i));
- _i=(_i)+(1);
- }
- }
- void rT129get_started(T129 *C){
- int _i=0;
- _i=1;
- while (!((_i)>(((T128*)(C)->_list)->_upper))) {
- rT116get_started((T116*)rT128item((T128*)(C)->_list,_i),(T0 *)C);
- _i=(_i)+(1);
- }
- }
- void rT129copy(T129 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT129has(T129 *C,T0 * a1){
- int R=0;
- int _i=0;
- _i=1;
- while (!((R)||((_i)>(((T128*)(C)->_list)->_upper)))) {
- R=rT116has((T116*)rT128item((T128*)(C)->_list,_i),a1);
- _i=(_i)+(1);
- }
- return R;
- }
- void rT129make(T129 *C,T0 * a1,T0 * a2,T0 * a3,T0* a4){
- C->_base_class=a1;
- C->_heading_comment=a3;
- C->_start_position=a2;
- C->_list=a4;
- }
- T0 * rT246add_comment(T246 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
- R=(T0 *)C;
- }
- /*AF*/else {
- {T214 *n=((T214*)new(214));
- rT214make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- void rT246pretty_print_assignment(/*C*/T0 * a1,T0* a2,T0 * a3){
- int _semi_colon_flag=0;
- XrT66pretty_print(a1);
- rT259put_character((T259*)oRBC27fmt,'\40');
- rT259put_string((T259*)oRBC27fmt,a2);
- rT259put_character((T259*)oRBC27fmt,'\40');
- _semi_colon_flag=((T259*)oRBC27fmt)->_semi_colon_flag;
- rT259level_incr((T259*)oRBC27fmt);
- /*(IRF3*/(((T259*)oRBC27fmt)->_semi_colon_flag)=(0);
- /*)*/XrT66pretty_print(a3);
- /*(IRF3*/(((T259*)oRBC27fmt)->_semi_colon_flag)=(_semi_colon_flag);
- /*)*//*IF*/if (_semi_colon_flag) {
- rT259put_character((T259*)oRBC27fmt,'\73');
- }
- /*FI*/rT259level_decr((T259*)oRBC27fmt);
- }
- void rT246pretty_print(T246 *C){
- rT246pretty_print_assignment((C)->_left_side,(T0 *)ms562,(C)->_right_side);
- }
- void rT246copy(T246 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT246make(T246 *C,T0 * a1,T0 * a2){
- C->_left_side=a1;
- C->_right_side=a2;
- }
- void rT95pretty_print(T95 *C){
- rT259put_string((T259*)oRBC27fmt,(C)->_to_string);
- }
- T0* rT95to_key(T95 *C){
- T0* R=NULL;
- R=(C)->_to_string;
- return R;
- }
- void rT95copy(T95 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT95make(T95 *C,T0* a1,T0 * a2){
- C->_to_string=a1;
- C->_start_position=a2;
- }
- void rT78bracketed_print(T78 *C){
- rT259put_character((T259*)oRBC27fmt,'\50');
- rT78pretty_print(C);
- rT259put_character((T259*)oRBC27fmt,'\51');
- }
- T0* rT78to_string(T78 *C){
- T0* R=NULL;
- R=rT2to_string((C)->_value);
- return R;
- }
- void rT78error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(a1);
- rT43error((T43*)oRBC27eh,a2);
- }
- T0 * rT78add_comment(T78 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T218 *n=((T218*)new(218));
- rT218make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- T0 * rT78_px45(T78 *C){
- T0 * R=NULL;
- {T78 *n=((T78*)new(78));
- rT78make(n,-((C)->_value),NULL);
- R=(T0 *)n;}
- return R;
- }
- void rT78print_as_target(T78 *C){
- rT78bracketed_print(C);
- rT259put_character((T259*)oRBC27fmt,'\56');
- }
- void rT78pretty_print(T78 *C){
- rT259put_string((T259*)oRBC27fmt,rT78to_string(C));
- }
- T0 * rT78to_real_constant(T78 *C){
- T0 * R=NULL;
- rT78error((C)->_start_position,(T0 *)ms274);
- return R;
- }
- void rT78copy(T78 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT78make(T78 *C,int a1,T0 * a2){
- C->_value=a1;
- C->_start_position=a2;
- }
- T0 * rT72add_comment(T72 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT57count((T57*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T218 *n=((T218*)new(218));
- rT218make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- void rT72copy(T72 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT2min(T2 C,int a1){
- int R=0;
- /*IF*/if ((C)<(a1)) {
- R=C;
- }
- else {
- R=a1;
- }
- /*FI*/return R;
- }
- int rT2max(T2 C,int a1){
- int R=0;
- /*IF*/if ((a1)<(C)) {
- R=C;
- }
- else {
- R=a1;
- }
- /*FI*/return R;
- }
- T0* rT2to_string(T2 C){
- T0* R=NULL;
- {T7 *n=((T7*)new(7));
- rT7make(n,0);
- R=(T0 *)n;}
- rT2append_in(C,R);
- return R;
- }
- char rT2digit(T2 C){
- char R='\0';
- R=rT7item(ms43,(C)+(1));
- return R;
- }
- void rT2append_in(T2 C,T0* a1){
- int _i=0;
- int _val=0;
- /*IF*/if ((C)==(0)) {
- rT7extend((T7*)a1,'0');
- }
- else {
- /*IF*/if ((C)<(0)) {
- rT7extend((T7*)a1,'\55');
- rT2append_in(-(C),a1);
- }
- else {
- _i=(((T7*)a1)->_count)+(1);
- _val=C;
- while (!((_val)==(0))) {
- rT7extend((T7*)a1,rT2digit((_val)%(10)));
- _val=(_val)/(10);
- }
- _val=((T7*)a1)->_count;
- while (!((_i)>=(_val))) {
- rT7swap((T7*)a1,_i,_val);
- _val=(_val)-(1);
- _i=(_i)+(1);
- }
- }
- /*FI*/}
- /*FI*/}
- float rT2to_real(T2 C){
- float R=0;
- R=C;
- return R;
- }
- void rT80pretty_print(T80 *C){
- int _i=0;
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms456);
- rT259level_incr((T259*)oRBC27fmt);
- rT259indent((T259*)oRBC27fmt);
- _i=1;
- while (!((_i)>(((T81*)(C)->_list)->_upper))) {
- rT63pretty_print((T63*)rT81item((T81*)(C)->_list,_i));
- _i=(_i)+(1);
- /*IF*/if ((_i)<=(((T81*)(C)->_list)->_upper)) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms459);
- }
- /*FI*/}
- rT259put_character((T259*)oRBC27fmt,'\73');
- rT259level_decr((T259*)oRBC27fmt);
- rT259indent((T259*)oRBC27fmt);
- }
- void rT80copy(T80 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT63pretty_print(T63 *C){
- int _i=0;
- /*IF*/if (((int)(C)->_index)) {
- rT259put_string((T259*)oRBC27fmt,(C)->_index);
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms457);
- }
- /*FI*//*IF*/if (((int)(C)->_list)) {
- rT259level_incr((T259*)oRBC27fmt);
- _i=XrT79lower((C)->_list);
- while (!((_i)>(XrT79upper((C)->_list)))) {
- XrT66pretty_print(XrT79item((C)->_list,_i));
- _i=(_i)+(1);
- /*IF*/if ((_i)<=(XrT79upper((C)->_list))) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms458);
- }
- /*FI*/}
- rT259level_decr((T259*)oRBC27fmt);
- }
- /*FI*/}
- void rT63add_index_value(T63 *C,T0 * a1){
- /*IF*/if (!((C)->_list)) {
- C->_list=ma(79,0,1,a1);
- }
- else {
- XrT79add_last((C)->_list,a1);
- }
- /*FI*/}
- void rT63copy(T63 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- T0 * rT249first_name(T249 *C){
- T0 * R=NULL;
- R=rT126item((T126*)(C)->_names,1);
- return R;
- }
- void rT249error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(a1);
- rT43error((T43*)oRBC27eh,a2);
- }
- T0 * rT249start_position(T249 *C){
- T0 * R=NULL;
- R=XrT65start_position(rT249first_name(C));
- return R;
- }
- void rT249pretty_print_routine_body(T249 *C){
- /*IF*/if (((int)(C)->_local_vars)) {
- rT137pretty_print((T137*)(C)->_local_vars);
- }
- /*FI*/rT259indent((T259*)oRBC27fmt);
- /*(IRF3*/rT259keyword((T259*)oRBC27fmt,(T0 *)ms533);
- /*)*/rT259put_character((T259*)oRBC27fmt,'\40');
- /*IF*/if (((int)(C)->_routine_body)) {
- rT138pretty_print((T138*)(C)->_routine_body);
- }
- /*FI*/}
- void rT249pretty_print_arguments(T249 *C){
- /*IF*/if (((int)(C)->_arguments)) {
- rT90pretty_print((T90*)(C)->_arguments);
- }
- /*FI*/}
- void rT249pretty_print_one_name(/*C*/T0 * a1){
- /*IF*/if (XrT65is_frozen(a1)) {
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms511);
- }
- /*FI*/XrT65pretty_print(a1);
- }
- void rT249pretty_print_names(T249 *C){
- int _i=0;
- _i=1;
- rT249pretty_print_one_name(rT126item((T126*)(C)->_names,_i));
- _i=(_i)+(1);
- while (!((_i)>(rT126count((T126*)(C)->_names)))) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms512);
- rT249pretty_print_one_name(rT126item((T126*)(C)->_names,_i));
- _i=(_i)+(1);
- }
- }
- void rT249pretty_print_profile(T249 *C){
- rT249pretty_print_names(C);
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT249pretty_print_arguments(C);
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(3);
- /*)*//*IF*/if (((int)(C)->_result_type)) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms513);
- XrT56pretty_print((C)->_result_type);
- }
- /*FI*/}
- void rT249pretty_print(T249 *C){
- T0 * _fn=NULL;
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(1);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT249pretty_print_profile(C);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms517);
- /*IF*/if (((int)(C)->_obsolete_mark)) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms518);
- rT74pretty_print((T74*)(C)->_obsolete_mark);
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- /*IF*/if (((int)(C)->_header_comment)) {
- rT57pretty_print((T57*)(C)->_header_comment);
- }
- /*FI*//*IF*/if (((int)(C)->_require_assertion)) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT135pretty_print((T135*)(C)->_require_assertion);
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT249pretty_print_routine_body(C);
- /*IF*/if (((int)(C)->_ensure_assertion)) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT155pretty_print((T155*)(C)->_ensure_assertion);
- }
- /*FI*//*IF*/if (((int)(C)->_rescue_compound)) {
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms524);
- rT138pretty_print((T138*)(C)->_rescue_compound);
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(2);
- /*)*/rT259indent((T259*)oRBC27fmt);
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms525);
- /*IF*/if ((((int)(C)->_end_comment))&&(!(rT57dummy((T57*)(C)->_end_comment)))) {
- rT57pretty_print((T57*)(C)->_end_comment);
- }
- else if (((T259*)oRBC27fmt)->_print_end_routine) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms527);
- _fn=rT249first_name(C);
- /*IF*/if (XrT65is_prefix_name(_fn)) {
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms528);
- rT259put_character((T259*)oRBC27fmt,'\42');
- rT259put_string((T259*)oRBC27fmt,XrT65to_string(_fn));
- rT259put_character((T259*)oRBC27fmt,'\42');
- }
- else if (XrT65is_infix_name(_fn)) {
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms529);
- rT259put_character((T259*)oRBC27fmt,'\42');
- rT259put_string((T259*)oRBC27fmt,XrT65to_string(_fn));
- rT259put_character((T259*)oRBC27fmt,'\42');
- }
- else {
- rT259put_string((T259*)oRBC27fmt,XrT65to_string(_fn));
- }
- /*FI*/}
- /*FI*/rT259put_character((T259*)oRBC27fmt,'\12');
- }
- void rT249add_into(T249 *C,T0 * a1){
- T0 * _fn=NULL;
- int _i=0;
- C->_base_class=rT44base_class((T44*)XrT65start_position(rT126item((T126*)(C)->_names,1)));
- _i=1;
- while (!((_i)>(rT126count((T126*)(C)->_names)))) {
- _fn=rT126item((T126*)(C)->_names,_i);
- /*IF*/if (rT59has((T59*)a1,XrT65to_key(_fn))) {
- _fn=XrT60first_name(rT59at((T59*)a1,XrT65to_key(_fn)));
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(_fn));
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(XrT65start_position(rT126item((T126*)(C)->_names,_i)));
- rT43error((T43*)oRBC27eh,(T0 *)ms417);
- /*UT*/(T43*)oRBC27eh;
- rT43append(XrT65to_string(_fn));
- rT43error((T43*)oRBC27eh,(T0 *)ms37);
- }
- else {
- rT59put((T59*)a1,(T0 *)C,XrT65to_key(_fn));
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- void rT249set_header_comment(T249 *C,T0 * a1){
- /*IF*/if ((((int)a1))&&((rT57count((T57*)a1))>(1))) {
- C->_end_comment=a1;
- }
- /*FI*/}
- void rT249copy(T249 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT249set_rescue_compound(T249 *C,T0 * a1){
- /*IF*/if ((((int)a1))&&(/*(IRF4*/0/*)*/)) {
- rT249error(rT249start_position(C),(T0 *)ms400);
- }
- /*FI*/C->_rescue_compound=a1;
- }
- void rT249make_e_feature(T249 *C,T0 * a1,T0 * a2){
- C->_names=a1;
- C->_result_type=a2;
- }
- void rT249make_routine(T249 *C,T0 * a1,T0 * a2,T0 * a3,T0 * a4,T0 * a5){
- rT249make_e_feature(C,a1,NULL);
- C->_header_comment=a4;
- C->_arguments=a2;
- C->_obsolete_mark=a3;
- C->_require_assertion=a5;
- }
- void rT249make(T249 *C,T0 * a1,T0 * a2,T0 * a3,T0 * a4,T0 * a5,T0 * a6,T0 * a7){
- rT249make_routine(C,a1,a2,a3,a4,a5);
- C->_local_vars=a6;
- C->_routine_body=a7;
- C->_use_current_state=1008;
- }
- T0* rT50find_path_for(T50 *C,T0* a1){
- T0* R=NULL;
- int _i=0;
- rT7copy((T7*)(T0 *)ms48,a1);
- rT7to_lower((T7*)(T0 *)ms48);
- /*IF*/if (!(rT7has_suffix((T7*)(T0 *)ms48,(T0 *)ms49))) {
- rT7append((T7*)(T0 *)ms48,(T0 *)ms49);
- }
- /*FI*//*IF*/if (rT50file_exists(C,(T0 *)ms48)) {
- R=rT50clone(C,(T0 *)ms48);
- }
- else {
- _i=((T42*)rT50loading_path(C))->_lower;
- while (!(((_i)>(((T42*)rT50loading_path(C))->_upper))||(((int)R)))) {
- rT7copy((T7*)(T0 *)ms56,rT42item((T42*)rT50loading_path(C),_i));
- rT7append((T7*)(T0 *)ms56,(T0 *)ms48);
- /*IF*/if (rT50file_exists(C,(T0 *)ms56)) {
- R=rT50clone(C,(T0 *)ms56);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*//*IF*/if ((!(R))&&(rT55has((T55*)rT50rename_dictionary(C),(T0 *)ms48))) {
- rT7copy((T7*)(T0 *)ms56,rT55at((T55*)rT50rename_dictionary(C),(T0 *)ms48));
- /*IF*/if (rT50file_exists(C,(T0 *)ms56)) {
- R=(T0 *)ms56;
- }
- else {
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms64);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms56);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms65);
- rT50die_with_code(C,1);
- }
- /*FI*/}
- /*FI*//*IF*/if (!(R)) {
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms66);
- rT33put_string((T33*)oRBC1std_error,a1);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms67);
- /*(IRF3*/(((T7*)(T0 *)ms56)->_count)=(0);
- /*)*/rT50append_loading_path_in(C,(T0 *)ms56);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms56);
- }
- /*FI*/return R;
- }
- T0 * rT50get_class(/*C*/T0* a1){
- T0 * R=NULL;
- /*IF*/if (rT52has((T52*)oRBC50base_class_dictionary,a1)) {
- R=rT52at((T52*)oRBC50base_class_dictionary,a1);
- }
- else {
- rT46make((T46*)rT50tmp_class_name(),a1,NULL);
- R=rT46base_class((T46*)rT50tmp_class_name());
- }
- /*FI*/return R;
- }
- int rT50is_used(/*C*/T0* a1){
- int R=0;
- R=rT52has((T52*)oRBC50base_class_dictionary,a1);
- return R;
- }
- T0* rT50get_environment_variable(T50 *C,T0* a1){
- T0* R=NULL;
- rT7extend((T7*)a1,'\0');
- R=((T0 *)getenv(((T7 *)a1)->_storage));
- if (R) R=((T0 *)e2s((char *)R));
- rT7remove_last((T7*)a1,1);
- return R;
- }
- char rT50directory_separator(T50 *C){
- char R='\0';
- if (ofBC27directory_separator==0){
- ofBC27directory_separator=1;
- R=rT7last((T7*)rT50small_eiffel_directory(C));
- oRBC27directory_separator=R;}
- return oRBC27directory_separator;}
- void rT50die_with_code(T50 *C,int a1){
- exit(a1);
- }
- void rT50fatal_error(/*C*/T0* a1){
- rT43fatal_error((T43*)oRBC27eh,a1);
- }
- int ofBC50loading_path=0;
- T0*oRBC50loading_path;
- T0* rT50loading_path(T50 *C){
- T0* R=NULL;
- T0 * _file=NULL;
- T0* _defaults=NULL;
- char _slash='\0';
- int _i=0;
- T0* _path=NULL;
- if (ofBC50loading_path==0){
- ofBC50loading_path=1;
- _path=(T0 *)ms50;
- {T42 *n=((T42*)new(42));
- rT42make(n,1,10);
- R=(T0 *)n;}
- rT42clear((T42*)R);
- _slash=rT50directory_separator(C);
- /*IF*/if (rT50file_exists(C,_path)) {
- {T39 *n=((T39*)new(39));
- /*(IRF3*/((n)->_mode)=((T0 *)ms26);
- /*)*/_file=(T0 *)n;}
- rT50open_read(C,_file,_path);
- while (!(rT39end_of_input((T39*)_file))) {
- rT39read_line((T39*)_file);
- _path=rT50clone(C,oRBC39last_string);
- /*IF*/if (!(rT7empty((T7*)_path))) {
- /*IF*/if ((rT7last((T7*)_path))!=(_slash)) {
- rT7extend((T7*)_path,_slash);
- }
- /*FI*/rT42add_last((T42*)R,_path);
- }
- /*FI*/}
- rT39disconnect((T39*)_file);
- }
- /*FI*/_defaults=ma(42,0,3,ms53,ms54,ms55);
- _i=1;
- while (!((_i)>(((T42*)_defaults)->_upper))) {
- _path=rT42item((T42*)_defaults,_i);
- rT7prepend((T7*)_path,rT50small_eiffel_directory(C));
- rT7extend((T7*)_path,_slash);
- rT42add_last((T42*)R,_path);
- _i=(_i)+(1);
- }
- oRBC50loading_path=R;}
- return oRBC50loading_path;}
- void rT50incr_magic_count(T50 *C){
- C->_magic_count=((C)->_magic_count)+(1);
- }
- void rT50add_class(T50 *C,T0 * a1){
- rT52put((T52*)oRBC50base_class_dictionary,a1,((T46*)((T48*)a1)->_base_class_name)->_to_string);
- rT50incr_magic_count(C);
- }
- int rT50re_load_class(T50 *C,T0 * a1){
- int R=0;
- T0 * _new_class=NULL;
- T0* _name=NULL;
- _name=((T46*)((T48*)a1)->_base_class_name)->_to_string;
- rT52remove((T52*)oRBC50base_class_dictionary,_name);
- _new_class=rT50load_class(C,_name);
- R=((int)_new_class);
- return R;
- }
- void rT50open_read(T50 *C,T0 * a1,T0* a2){
- rT39connect_to((T39*)a1,a2);
- /*IF*/if (!(rT39is_connected((T39*)a1))) {
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms51);
- rT33put_string((T33*)oRBC1std_error,a2);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms52);
- rT50die_with_code(C,1);
- }
- /*FI*/}
- T0* rT50clone(T50 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- int ofBC50tmp_class_name=0;
- T0*oRBC50tmp_class_name;
- T0 * rT50tmp_class_name(/*C*/void){
- T0 * R=NULL;
- if (ofBC50tmp_class_name==0){
- ofBC50tmp_class_name=1;
- {T46 *n=((T46*)new(46));
- rT46make(n,(T0 *)ms181,NULL);
- R=(T0 *)n;}
- oRBC50tmp_class_name=R;}
- return oRBC50tmp_class_name;}
- int ofBC50rename_dictionary=0;
- T0*oRBC50rename_dictionary;
- T0 * rT50rename_dictionary(T50 *C){
- T0 * R=NULL;
- T0* _short_name=NULL;
- T0* _full_name=NULL;
- int _i=0;
- if (ofBC50rename_dictionary==0){
- ofBC50rename_dictionary=1;
- {T55 *n=((T55*)new(55));
- rT55make(n);
- R=(T0 *)n;}
- _i=1;
- while (!((_i)>(((T42*)rT50loading_path(C))->_upper))) {
- rT7copy((T7*)(T0 *)ms56,rT42item((T42*)rT50loading_path(C),_i));
- rT7append((T7*)(T0 *)ms56,(T0 *)ms57);
- /*IF*/if (rT50file_exists(C,(T0 *)ms56)) {
- rT50open_read(C,rT50tmp_file_read(),(T0 *)ms56);
- while (!(rT39end_of_input((T39*)rT50tmp_file_read()))) {
- rT39read_word((T39*)rT50tmp_file_read());
- _full_name=rT50clone(C,oRBC39last_string);
- rT39read_word((T39*)rT50tmp_file_read());
- _short_name=rT50clone(C,oRBC39last_string);
- rT7prepend((T7*)_short_name,rT42item((T42*)rT50loading_path(C),_i));
- /*IF*/if (rT55has((T55*)R,_full_name)) {
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms58);
- rT33put_string((T33*)oRBC1std_error,_full_name);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms59);
- rT33put_string((T33*)oRBC1std_error,_short_name);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms60);
- rT33put_string((T33*)oRBC1std_error,rT55at((T55*)R,_full_name));
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms61);
- rT50die_with_code(C,1);
- }
- /*FI*/rT55put((T55*)R,_short_name,_full_name);
- rT39skip_separators((T39*)rT50tmp_file_read());
- }
- rT39disconnect((T39*)rT50tmp_file_read());
- }
- /*FI*/_i=(_i)+(1);
- }
- oRBC50rename_dictionary=R;}
- return oRBC50rename_dictionary;}
- void rT50append_loading_path_in(T50 *C,T0* a1){
- T0* _sed=NULL;
- int _i=0;
- rT7append((T7*)a1,(T0 *)ms68);
- _i=((T42*)rT50loading_path(C))->_lower;
- while (!((_i)>(((T42*)rT50loading_path(C))->_upper))) {
- rT7extend((T7*)a1,'\42');
- rT7append((T7*)a1,rT42item((T42*)rT50loading_path(C),_i));
- rT7extend((T7*)a1,'\42');
- rT7extend((T7*)a1,'\12');
- _i=(_i)+(1);
- }
- rT7append((T7*)a1,(T0 *)ms69);
- rT7append((T7*)a1,(T0 *)ms14);
- _sed=rT50get_environment_variable(C,(T0 *)ms14);
- rT7append((T7*)a1,(T0 *)ms70);
- /*IF*/if (!(_sed)) {
- rT7append((T7*)a1,(T0 *)ms71);
- }
- else {
- rT7append((T7*)a1,(T0 *)ms72);
- rT7append((T7*)a1,_sed);
- rT7append((T7*)a1,(T0 *)ms73);
- }
- /*FI*/rT7extend((T7*)a1,'\12');
- }
- int ofBC27tmp_file_read=0;
- T0*oRBC27tmp_file_read;
- T0 * rT50tmp_file_read(/*C*/void){
- T0 * R=NULL;
- if (ofBC27tmp_file_read==0){
- ofBC27tmp_file_read=1;
- {T39 *n=((T39*)new(39));
- /*(IRF3*/((n)->_mode)=((T0 *)ms26);
- /*)*/R=(T0 *)n;}
- oRBC27tmp_file_read=R;}
- return oRBC27tmp_file_read;}
- T0* rT50small_eiffel_directory(T50 *C){
- T0* R=NULL;
- char _slash='\0';
- int _i=0;
- if (ofBC27small_eiffel_directory==0){
- ofBC27small_eiffel_directory=1;
- R=rT50get_environment_variable(C,(T0 *)ms14);
- /*IF*/if (!(R)) {
- R=rT50clone(C,(T0 *)ms14);
- rT7to_upper((T7*)R);
- R=rT50get_environment_variable(C,R);
- /*IF*/if (((int)R)) {
- rT7to_upper((T7*)(T0 *)ms14);
- }
- /*FI*/}
- /*FI*//*IF*/if (!(R)) {
- R=(T0 *)ms20;
- }
- /*FI*/_i=((T7*)R)->_count;
- while (!((_i)<(0))) {
- _slash=rT7item((T7*)R,_i);
- /*IF*/if ((rT3is_letter(_slash))||(rT3is_digit(_slash))) {
- _i=(_i)-(1);
- }
- else {
- _i=-(1);
- }
- /*FI*/}
- /*IF*/if ((_i)==(0)) {
- rT7extend((T7*)R,'\57');
- }
- else if (!((rT7last((T7*)R))==(_slash))) {
- rT7extend((T7*)R,_slash);
- }
- /*FI*/oRBC27small_eiffel_directory=R;}
- return oRBC27small_eiffel_directory;}
- T0 * rT50base_class(T50 *C,T0 * a1){
- T0 * R=NULL;
- T0* _path=NULL;
- /*IF*/if (rT52has((T52*)oRBC50base_class_dictionary,((T46*)a1)->_to_string)) {
- R=rT52at((T52*)oRBC50base_class_dictionary,((T46*)a1)->_to_string);
- }
- else if (/*(IRF4*/((T49*)oRBC27eiffel_parser)->_is_running/*)*/) {
- rT50fatal_error((T0 *)ms47);
- }
- else {
- _path=rT50find_path_for(C,((T46*)a1)->_to_string);
- /*IF*/if (((int)_path)) {
- R=rT49analyse_class((T49*)oRBC27eiffel_parser,_path);
- }
- /*FI*//*IF*/if (!(R)) {
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(((T46*)a1)->_start_position);
- rT50fatal_error((T0 *)ms423);
- }
- else if (!(rT52has((T52*)oRBC50base_class_dictionary,((T46*)a1)->_to_string))) {
- /*UT*/(T43*)oRBC27eh;
- rT43append((T0 *)ms424);
- /*UT*/(T43*)oRBC27eh;
- rT43append(_path);
- /*UT*/(T43*)oRBC27eh;
- rT43append((T0 *)ms425);
- /*UT*/(T43*)oRBC27eh;
- rT43append(((T46*)a1)->_to_string);
- rT50fatal_error((T0 *)ms426);
- }
- /*FI*/}
- /*FI*/return R;
- }
- T0*oRBC50base_class_dictionary;
- void rT50copy(T50 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT50next_id(T50 *C){
- int R=0;
- /*IF*/if (((C)->_last_id)==(0)) {
- C->_last_id=25;
- }
- /*FI*/C->_last_id=((C)->_last_id)+(1);
- R=(C)->_last_id;
- return R;
- }
- int rT50next_unique(T50 *C){
- int R=0;
- /*IF*/if (((C)->_last_unique)<(1000)) {
- C->_last_unique=1000;
- }
- /*FI*/C->_last_unique=((C)->_last_unique)+(1);
- R=(C)->_last_unique;
- return R;
- }
- T0 * rT50load_class(T50 *C,T0* a1){
- T0 * R=NULL;
- T0* _path=NULL;
- _path=rT50find_path_for(C,a1);
- /*IF*/if (!(_path)) {
- rT50fatal_error((T0 *)ms443);
- }
- else {
- R=rT49analyse_class((T49*)oRBC27eiffel_parser,_path);
- /*IF*/if (!(R)) {
- rT50fatal_error((T0 *)ms444);
- }
- /*FI*/}
- /*FI*/return R;
- }
- int rT50file_exists(T50 *C,T0* a1){
- int R=0;
- rT7extend((T7*)a1,'\0');
- {FILE *f=fopen(((T7 *)a1)->_storage,"r");
- R=(f != NULL);
- fclose(f);}
- rT7remove_last((T7*)a1,1);
- return R;
- }
- int rT48proper_has(T48 *C,T0 * a1){
- int R=0;
- R=rT59has((T59*)(C)->_feature_dictionary,XrT65to_key(a1));
- return R;
- }
- int rT48is_generic(T48 *C){
- int R=0;
- R=((int)(C)->_formal_generic_list);
- return R;
- }
- int rT48is_general(T48 *C){
- int R=0;
- R=((T0 *)(T0 *)ms182)==((T0 *)((T46*)(C)->_base_class_name)->_to_string);
- return R;
- }
- void rT48error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T43*)oRBC27eh;
- rT43add_position(a1);
- rT43error((T43*)oRBC27eh,a2);
- }
- void rT48error1(T48 *C){
- rT48error(((T46*)(C)->_base_class_name)->_start_position,(T0 *)ms176);
- }
- void rT48add_creation_clause(T48 *C,T0 * a1){
- /*IF*/if (!((C)->_creation_clause_list)) {
- {T131 *n=((T131*)new(131));
- /*(IRF3*/((n)->_list)=(ma(132,0,1,a1));
- /*)*/C->_creation_clause_list=(T0 *)n;}
- }
- else {
- rT131add_last((T131*)(C)->_creation_clause_list,a1);
- }
- /*FI*/}
- void rT48add_feature_clause(T48 *C,T0 * a1){
- /*IF*/if (!((C)->_feature_clause_list)) {
- {T255 *n=((T255*)new(255));
- /*(IRF3*/((n)->_list)=(ma(256,0,1,a1));
- /*)*/C->_feature_clause_list=(T0 *)n;}
- }
- else {
- rT255add_last((T255*)(C)->_feature_clause_list,a1);
- }
- /*FI*/}
- void rT48pretty_print(T48 *C){
- /*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (((int)(C)->_index_list)) {
- rT80pretty_print((T80*)(C)->_index_list);
- rT259indent((T259*)oRBC27fmt);
- }
- /*FI*//*IF*/if (((int)(C)->_heading_comment1)) {
- rT57pretty_print((T57*)(C)->_heading_comment1);
- rT259indent((T259*)oRBC27fmt);
- }
- /*FI*//*IF*/if ((C)->_is_deferred) {
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms461);
- }
- else if ((C)->_is_expanded) {
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms121);
- }
- /*FI*/rT259keyword((T259*)oRBC27fmt,(T0 *)ms462);
- rT46pretty_print((T46*)(C)->_base_class_name);
- /*IF*/if (rT48is_generic(C)) {
- rT83pretty_print((T83*)(C)->_formal_generic_list);
- }
- /*FI*/rT259indent((T259*)oRBC27fmt);
- /*IF*/if (((int)(C)->_obsolete_type_string)) {
- rT259keyword((T259*)oRBC27fmt,(T0 *)ms465);
- rT74pretty_print((T74*)(C)->_obsolete_type_string);
- }
- /*FI*/rT259indent((T259*)oRBC27fmt);
- /*IF*/if (((int)(C)->_heading_comment2)) {
- rT57pretty_print((T57*)(C)->_heading_comment2);
- }
- /*FI*//*IF*/if (((int)(C)->_parent_list)) {
- rT129pretty_print((T129*)(C)->_parent_list);
- }
- /*FI*//*IF*/if (((int)(C)->_creation_clause_list)) {
- rT131pretty_print((T131*)(C)->_creation_clause_list);
- }
- /*FI*//*IF*/if (((int)(C)->_feature_clause_list)) {
- rT255pretty_print((T255*)(C)->_feature_clause_list);
- }
- /*FI*//*IF*/if (((int)(C)->_invariant_assertion)) {
- rT257pretty_print((T257*)(C)->_invariant_assertion);
- }
- /*FI*//*IF*/if (((int)(C)->_end_comment)) {
- rT57pretty_print((T57*)(C)->_end_comment);
- }
- /*FI*//*(IRF3*/(((T259*)oRBC27fmt)->_indent_level)=(0);
- /*)*//*IF*/if (((T259*)oRBC27fmt)->_zen_mode) {
- rT259skip((T259*)oRBC27fmt,0);
- }
- else {
- rT259skip((T259*)oRBC27fmt,1);
- }
- /*FI*/rT259keyword((T259*)oRBC27fmt,(T0 *)ms490);
- /*IF*/if (!(((T259*)oRBC27fmt)->_zen_mode)) {
- rT259put_string((T259*)oRBC27fmt,(T0 *)ms491);
- rT259put_string((T259*)oRBC27fmt,((T46*)(C)->_base_class_name)->_to_string);
- }
- /*FI*/rT259put_character((T259*)oRBC27fmt,'\12');
- }
- int rT48super_has(T48 *C,T0 * a1){
- int R=0;
- /*IF*/if ((!((C)->_parent_list))||((rT129count((T129*)(C)->_parent_list))==(0))) {
- /*IF*/if (rT48is_general(C)) {
- R=0;
- }
- else {
- R=rT48has((T48*)/*(IRF4*/rT48class_with((T0 *)ms181)/*)*/,a1);
- }
- /*FI*/}
- else {
- R=rT129has((T129*)(C)->_parent_list,a1);
- }
- /*FI*/return R;
- }
- void rT48add_index_clause(T48 *C,T0 * a1){
- /*IF*/if (!((C)->_index_list)) {
- {T80 *n=((T80*)new(80));
- /*(IRF3*/((n)->_list)=(ma(81,0,1,a1));
- /*)*/C->_index_list=(T0 *)n;}
- }
- else {
- rT81add_last((T81*)((T80*)(C)->_index_list)->_list,a1);
- }
- /*FI*/}
- void rT48get_started(T48 *C){
- T0* _s1=NULL;
- C->_id=rT46frozen_id((T46*)(C)->_base_class_name);
- /*IF*/if (((C)->_id)==(0)) {
- C->_id=rT50next_id((T50*)oRBC27small_eiffel);
- }
- /*FI*//*IF*/if (((int)(C)->_feature_clause_list)) {
- rT255get_started((T255*)(C)->_feature_clause_list,(C)->_feature_dictionary);
- }
- /*FI*//*IF*/if (((int)(C)->_parent_list)) {
- rT129get_started((T129*)(C)->_parent_list);
- }
- /*FI*/}
-